iT邦幫忙

2024 iThome 鐵人賽

DAY 3
0
Mobile Development

肯定會斷賽之在 Android 開發使用設計模式系列 第 3

113/03 - 單例模式(Singleton)- Kotlin

  • 分享至 

  • xImage
  •  

介紹

Kotlin 有內建單例,只要把class換成object就好

object Member {

    private var name: String = ""

    fun setMemberName(name: String) {
        this.name = name
    }

    fun getMemberName(): String {
        return name
    }
}

存入姓名

Member.setMemberName("AndyAWD")

讀取姓名

Log.d("TAG", "姓名: ${Member.getMemberName()}")

但是內建的單例是餓漢式

我們精英中心.jpg

用靜態內部實作

class Member {
    companion object {
        val INSTANCE = MemberHolder.memberHolder
    }

    private object MemberHolder {
        val memberHolder = Member
    }
}

上一篇
113/02 - 單例模式(Singleton)- Java
下一篇
113/04 - 抽象工廠模式(Abstract Factory)- Java
系列文
肯定會斷賽之在 Android 開發使用設計模式30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言